home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 July / EnigmA AMIGA RUN 29 (1998)(G.R. Edizioni)(IT)[!][issue 1998-07 & 08].iso / recent / warpup1.lha / WarpUP-WarpOS / include / stormprotos / powerpc_sprotos.h
C/C++ Source or Header  |  1998-04-07  |  18KB  |  543 lines

  1. #ifndef STORMPROTOS_POWERPC_SPROTOS_H
  2. #define STORMPROTOS_POWERPC_SPROTOS_H
  3.  
  4. /*
  5. **  $VER: powerpc_sprotos.h 2.0 (15.03.98)
  6. **  WarpOS Release 14.1
  7. **
  8. **  '(C) Copyright 1998 Haage & Partner Computer GmbH'
  9. **       All Rights Reserved
  10. */
  11.  
  12.  
  13. #ifndef UTILITY_TAGITEM_H
  14. #include <utility/tagitem.h>
  15. #endif
  16.  
  17. #ifndef DEVICES_TIMER_H
  18. #include <devices/timer.h>
  19. #endif
  20.  
  21. #ifndef POWERPC_PORTSPPC_H
  22. #include <powerpc/portsPPC.h>
  23. #endif
  24.  
  25. #ifndef POWERPC_TASKS_H
  26. #include <powerpc/tasksppc.h>
  27. #endif
  28.  
  29. #ifndef POWERPC_SEMAPHORES_H
  30. #include <powerpc/semaphoresppc.h>
  31. #endif
  32.  
  33. #ifdef __PPC__
  34.  
  35. /*
  36. Attention: The names for this PPC functions (all have a suffix "_" 
  37.            are subject to change. As soon as the StormC PPC compiler 
  38.            is able to add the "struct Library *" by default for 
  39.            shared library functions the names will loose the suffix.
  40.  
  41.            Please use the __inline functions from the end of this file.           
  42. */
  43.  
  44. extern "AmigaLib" PowerPCBase {
  45.  
  46.         /* *** call 68K */
  47.         ULONG Run68K_(struct Library *, struct PPCArgs *) = -300;
  48.         ULONG WaitFor68K_(struct Library *, struct PPCArgs *) = -306;
  49.         
  50.         /* *** debugging */
  51.         VOID SPrintF_(struct Library *, STRPTR, APTR) = -312;
  52.  
  53.         /* *** memory */
  54.         APTR AllocVecPPC_(struct Library *, ULONG, ULONG, ULONG) = -324;
  55.         LONG FreeVecPPC_(struct Library *, APTR) = -330;
  56.  
  57.         /* *** time measurement */
  58.         VOID GetSysTimePPC_(struct Library*, struct timeval *) = -684;
  59.         VOID AddTimePPC_(struct Library*, struct timeval *, struct timeval *) = -690;
  60.         VOID SubTimePPC_(struct Library*, struct timeval *, struct timeval *) = -696;
  61.         LONG CmpTimePPC_(struct Library*, struct timeval *, struct timeval *) = -702;
  62.         
  63. #ifndef POWERPCLIB_V7
  64.         /* *** more debugging */
  65.         ULONG SnoopTask_(struct Library *, struct TagItem *) = -714;
  66. /*      ULONG SnoopTaskTags_(struct Library *, Tag tag1, ...) = -714; */
  67.         VOID EndSnoopTask_(struct Library *, ULONG) = -720;
  68.  
  69.         /* *** more memory */
  70.         VOID FreeAllMem_(struct Library *) = -654;
  71.         VOID CopyMemPPC_(struct Library *, APTR, APTR, ULONG) = -660;
  72.  
  73.         /* *** lists */
  74.         VOID AddHeadPPC_(struct Library *, struct List *, struct Node *) = -408;
  75.         VOID AddTailPPC_(struct Library *, struct List *, struct Node *) = -414;
  76.         VOID EnqueuePPC_(struct Library *, struct List *, struct Node *) = -438;
  77.         struct Node *FindNamePPC_(struct Library *, struct List *, STRPTR) = -444;
  78.         VOID InsertPPC_(struct Library *, struct Node *, struct Node *) = -402;
  79.         struct Node *RemHeadPPC_(struct Library *, struct List *) = -426;
  80.         VOID RemovePPC_(struct Library *, struct Node *) = -420;
  81.         struct Node *RemTailPPC_(struct Library *, struct Node *) = -432;
  82.         
  83.         /* *** semaphores */
  84.         VOID AddSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -366;
  85.         LONG AttemptSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -384;
  86.         struct SignalSemaphorePPC *FindSemaphorePPC_(struct Library *, STRPTR) = -396;
  87.         VOID FreeSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -360;
  88.         LONG InitSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -354;
  89.         VOID ObtainSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -378;
  90.         VOID ReleaseSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -390;
  91.         VOID RemSemaphorePPC_(struct Library *, struct SignalSemaphorePPC *) = -372;
  92.         
  93.         /* *** signals */
  94.         LONG AllocSignalPPC_(struct Library *, LONG) = -468;
  95.         VOID FreeSignalPPC_(struct Library *, LONG) = -474;
  96.         ULONG SetSignalPPC_(struct Library *, ULONG, ULONG) = -480;
  97.         VOID SignalPPC_(struct Library *, struct TaskPPC *, ULONG) = -486;
  98.         ULONG WaitPPC_(struct Library *, ULONG) = -492;
  99.         ULONG WaitTime_(struct Library *, ULONG, ULONG) = -552;
  100.         
  101.         /* *** tasks */
  102.         struct TaskPPC *CreateTaskPPC_(struct Library *, struct TagItem *) = -336;
  103. /*      struct TaskPPC *CreateTaskPPCTags_(struct Library *, Tag tag1, ...) = -336; */
  104.         VOID DeleteTaskPPC_(struct Library *, struct TaskPPC *) = -342;
  105.         struct TaskPPC *FindTaskPPC_(struct Library *, STRPTR) = -348;
  106.         struct TaskPtr *LockTaskList_(struct Library *) = -564;
  107.         LONG SetTaskPriPPC_(struct Library *, struct TaskPPC *, LONG) = -498;
  108.         VOID UnLockTaskList_(struct Library *) = -570;
  109.         struct TaskPPC *FindTaskByID_(struct Library *, LONG) = -738;
  110.         LONG SetNiceValue_(struct Library *, struct TaskPPC *, LONG) = -744;
  111.  
  112.         /* *** ports */
  113.         VOID AddPortPPC_(struct Library *, struct MsgPortPPC *) = -612;
  114.         struct MsgPortPPC *CreateMsgPortPPC_(struct Library *) = -600;
  115.         VOID DeleteMsgPortPPC_(struct Library *, struct MsgPortPPC *) = -606;
  116.         struct MsgPortPPC *FindPortPPC_(struct Library *, STRPTR) = -624;
  117.         struct Message *GetMsgPPC_(struct Library *, struct MsgPortPPC *) = -642;
  118.         VOID PutMsgPPC_(struct Library *, struct MsgPortPPC *, struct Message *) = -636;
  119.         struct Message *WaitPortPPC_(struct Library *, struct MsgPortPPC *) = - 630;
  120.         VOID RemPortPPC_(struct Library *, struct MsgPortPPC *) = -618;
  121.         VOID ReplyMsgPPC_(struct Library *, struct Message *) = -648;
  122.         struct Message *AllocXMsgPPC_(struct Library *, ULONG, struct MsgPortPPC *) = -666;
  123.         VOID FreeXMsgPPC_(struct Library *, struct Message *) = -672;
  124.         VOID PutXMsgPPC_(struct Library *, struct MsgPort *, struct Message *) = -678;
  125.         struct MsgPortPPC *SetReplyPortPPC_(struct Library *, struct Message *, struct MsgPortPPC *) = -708;
  126.  
  127.         /* *** tag items */
  128.         struct TagItem *FindTagItemPPC_(struct Library *, ULONG, struct TagItem *) = -450;
  129.         ULONG GetTagDataPPC_(struct Library *, ULONG, ULONG, struct TagItem *) = -456;
  130.         struct TagItem *NextTagItemPPC_(struct Library *, struct TagItem **) = -462;
  131.         
  132.         /* *** hardware */
  133.         VOID ChangeMMU_(struct Library *, ULONG) = -588;
  134.         VOID GetInfo_(struct Library *, struct TagItem *) = -594;
  135.         VOID SetCache_(struct Library *, ULONG, APTR, ULONG) = -510;
  136.         ULONG SetHardware_(struct Library *, ULONG, APTR) = -540;
  137.         VOID GetHALInfo_(struct Library *, struct TagItem *) = -726;
  138.         VOID SetScheduling_(struct Library *, struct TagItem *) = -732;
  139.         
  140.         /* *** exceptions */
  141.         VOID ModifyFPExc_(struct Library *, ULONG) = -546;
  142.         VOID RemExcHandler_(struct Library *, APTR) = -522;
  143.         APTR SetExcHandler_(struct Library *, struct TagItem *) = -516;
  144. /*      APTR SetExcHandlerTags_(struct Library *, Tag tag1, ...) = -516; */
  145.         VOID SetExcMMU_(struct Library *) = -576;
  146.         VOID ClearExcMMU_(struct Library *) = -582;
  147.         
  148.         /* *** supervisor */
  149.         ULONG Super_(struct Library *) = -528;
  150.         VOID User_(struct Library *, ULONG) = -534;
  151.         
  152.         /* *** 68K connection */
  153.         VOID Signal68K_(struct Library *, struct Task *, ULONG) = -504;
  154.         
  155. #endif /* POWERPCLIB_V7 */
  156. };
  157.  
  158. __inline ULONG Run68K(struct PPCArgs *a1) 
  159.         extern struct Library *PowerPCBase;
  160.         return Run68K_(PowerPCBase,a1); 
  161. }
  162. __inline ULONG WaitFor68K(struct PPCArgs *a1)
  163. {
  164.         extern struct Library *PowerPCBase;
  165.         return WaitFor68K_(PowerPCBase,a1);
  166. }
  167. __inline VOID SPrintF(STRPTR a1, APTR a2)
  168. {
  169.         extern struct Library *PowerPCBase;
  170.         SPrintF_(PowerPCBase,a1,a2);
  171. }
  172. __inline APTR AllocVecPPC(ULONG a1, ULONG a2, ULONG a3)
  173. {
  174.         extern struct Library *PowerPCBase;
  175.         return AllocVecPPC_(PowerPCBase,a1,a2,a3);
  176. }
  177. __inline VOID GetSysTimePPC(struct timeval *a1)
  178. {
  179.         extern struct Library *PowerPCBase;
  180.         GetSysTimePPC_(PowerPCBase,a1);
  181. }
  182.  
  183. __inline VOID AddTimePPC(struct timeval *a1, struct timeval *a2)
  184. {
  185.         extern struct Library *PowerPCBase;
  186.         AddTimePPC_(PowerPCBase,a1,a2);
  187. }
  188.  
  189. __inline VOID SubTimePPC(struct timeval *a1, struct timeval *a2)
  190. {
  191.         extern struct Library *PowerPCBase;
  192.         SubTimePPC_(PowerPCBase,a1,a2);
  193. }
  194.  
  195. __inline LONG CmpTimePPC(struct timeval *a1, struct timeval *a2)
  196. {
  197.         extern struct Library *PowerPCBase;
  198.         return CmpTimePPC_(PowerPCBase,a1,a2);
  199. }
  200.  
  201. __inline VOID FreeVecPPC(APTR a1)
  202. {
  203.         extern struct Library *PowerPCBase;
  204.         FreeVecPPC_(PowerPCBase,a1);
  205. }
  206.  
  207. #ifndef POWERPCLIB_V7
  208. __inline ULONG SnoopTask(struct TagItem *a1)
  209. {
  210.         extern struct Library *PowerPCBase;
  211.         return SnoopTask_(PowerPCBase,a1);
  212. }
  213. __inline ULONG SnoopTaskTags(Tag tag1, ...)
  214. {
  215.         extern struct Library *PowerPCBase;
  216.         return SnoopTask_(PowerPCBase,(struct TagItem *) &tag1);
  217. }
  218. __inline VOID EndSnoopTask(ULONG a1)
  219. {
  220.         extern struct Library *PowerPCBase;
  221.         EndSnoopTask_(PowerPCBase,a1);
  222. }
  223. __inline VOID FreeAllMem()
  224. {
  225.         extern struct Library *PowerPCBase;
  226.         FreeAllMem_(PowerPCBase);
  227. }
  228. __inline VOID CopyMemPPC(APTR a1, APTR a2, ULONG a3)
  229. {
  230.         extern struct Library *PowerPCBase;
  231.         CopyMemPPC_(PowerPCBase,a1,a2,a3);
  232. }
  233. __inline VOID AddHeadPPC(struct List *a1, struct Node *a2)
  234. {
  235.         extern struct Library *PowerPCBase;
  236.         AddHeadPPC_(PowerPCBase,a1,a2);
  237. }
  238. __inline VOID AddTailPPC(struct List *a1, struct Node *a2)
  239. {
  240.         extern struct Library *PowerPCBase;
  241.         AddTailPPC_(PowerPCBase,a1,a2);
  242. }
  243. __inline VOID EnqueuePPC(struct List *a1, struct Node *a2)
  244. {
  245.         extern struct Library *PowerPCBase;
  246.         EnqueuePPC_(PowerPCBase,a1,a2);
  247. }
  248. __inline struct Node *FindNamePPC(struct List *a1, STRPTR a2)
  249. {
  250.         extern struct Library *PowerPCBase;
  251.         return FindNamePPC_(PowerPCBase,a1,a2);
  252. }
  253. __inline VOID InsertPPC(struct Node *a1, struct Node *a2)
  254. {
  255.         extern struct Library *PowerPCBase;
  256.         InsertPPC_(PowerPCBase,a1,a2);
  257. }
  258. __inline struct Node *RemHeadPPC(struct List *a1)
  259. {
  260.         extern struct Library *PowerPCBase;
  261.         return RemHeadPPC_(PowerPCBase,a1);
  262. }
  263. __inline VOID RemovePPC(struct Node *a1)
  264. {
  265.         extern struct Library *PowerPCBase;
  266.         RemovePPC_(PowerPCBase,a1);
  267. }
  268. __inline struct Node *RemTailPPC(struct Node *a1)
  269. {
  270.         extern struct Library *PowerPCBase;
  271.         return RemTailPPC_(PowerPCBase,a1);
  272. }
  273. __inline VOID AddSemaphorePPC(struct SignalSemaphorePPC *a1)
  274. {
  275.         extern struct Library *PowerPCBase;
  276.         AddSemaphorePPC_(PowerPCBase,a1);
  277. }
  278. __inline LONG AttemptSemaphorePPC(struct SignalSemaphorePPC *a1)
  279. {
  280.         extern struct Library *PowerPCBase;
  281.         return AttemptSemaphorePPC_(PowerPCBase,a1);
  282. }
  283. __inline struct SignalSemaphorePPC *FindSemaphorePPC(STRPTR a1)
  284. {
  285.         extern struct Library *PowerPCBase;
  286.         return FindSemaphorePPC_(PowerPCBase,a1);
  287. }
  288. __inline VOID FreeSemaphorePPC(struct SignalSemaphorePPC *a1)
  289. {
  290.         extern struct Library *PowerPCBase;
  291.         FreeSemaphorePPC_(PowerPCBase,a1);
  292. }
  293. __inline LONG InitSemaphorePPC(struct SignalSemaphorePPC *a1)
  294. {
  295.         extern struct Library *PowerPCBase;
  296.         return InitSemaphorePPC_(PowerPCBase,a1);
  297. }
  298. __inline VOID ObtainSemaphorePPC(struct SignalSemaphorePPC *a1)
  299. {
  300.         extern struct Library *PowerPCBase;
  301.         ObtainSemaphorePPC_(PowerPCBase,a1);
  302. }
  303. __inline VOID ReleaseSemaphorePPC(struct SignalSemaphorePPC *a1)
  304. {
  305.         extern struct Library *PowerPCBase;
  306.         ReleaseSemaphorePPC_(PowerPCBase,a1);
  307. }
  308. __inline VOID RemSemaphorePPC(struct SignalSemaphorePPC *a1)
  309. {
  310.         extern struct Library *PowerPCBase;
  311.         RemSemaphorePPC_(PowerPCBase,a1);
  312. }
  313. __inline LONG AllocSignalPPC(LONG a1)
  314. {
  315.         extern struct Library *PowerPCBase;
  316.         return AllocSignalPPC_(PowerPCBase,a1);
  317. }
  318. __inline VOID FreeSignalPPC(LONG a1)
  319. {
  320.         extern struct Library *PowerPCBase;
  321.         FreeSignalPPC_(PowerPCBase,a1);
  322. }
  323. __inline ULONG SetSignalPPC(ULONG a1, ULONG a2)
  324. {
  325.         extern struct Library *PowerPCBase;
  326.         return SetSignalPPC_(PowerPCBase,a1,a2);
  327. }
  328. __inline VOID SignalPPC(struct TaskPPC *a1, ULONG a2)
  329. {
  330.         extern struct Library *PowerPCBase;
  331.         SignalPPC_(PowerPCBase,a1,a2);
  332. }
  333. __inline ULONG WaitPPC(ULONG a1)
  334. {
  335.         extern struct Library *PowerPCBase;
  336.         return WaitPPC_(PowerPCBase,a1);
  337. }
  338. __inline ULONG WaitTime(ULONG a1, ULONG a2)
  339. {
  340.         extern struct Library *PowerPCBase;
  341.         return WaitTime_(PowerPCBase,a1,a2);
  342. }
  343. __inline struct TaskPPC *CreateTaskPPC(struct TagItem *a1)
  344. {
  345.         extern struct Library *PowerPCBase;
  346.         return CreateTaskPPC_(PowerPCBase,a1);
  347. }
  348. __inline struct TaskPPC *CreateTaskPPCTags(Tag tag1, ...)
  349. {
  350.         extern struct Library *PowerPCBase;
  351.         return CreateTaskPPC_(PowerPCBase,(struct TagItem *) &tag1);
  352. }
  353. __inline VOID DeleteTaskPPC(struct TaskPPC *a1)
  354. {
  355.         extern struct Library *PowerPCBase;
  356.         DeleteTaskPPC_(PowerPCBase,a1);
  357. }
  358. __inline struct TaskPPC *FindTaskPPC(STRPTR a1)
  359. {
  360.         extern struct Library *PowerPCBase;
  361.         return FindTaskPPC_(PowerPCBase,a1);
  362. }
  363. __inline struct TaskPtr *LockTaskList()
  364. {
  365.         extern struct Library *PowerPCBase;
  366.         return LockTaskList_(PowerPCBase);
  367. }
  368. __inline LONG SetTaskPriPPC(struct TaskPPC *a1, LONG a2)
  369. {
  370.         extern struct Library *PowerPCBase;
  371.         return SetTaskPriPPC_(PowerPCBase,a1,a2);
  372. }
  373. __inline VOID UnLockTaskList()
  374. {
  375.         extern struct Library *PowerPCBase;
  376.         UnLockTaskList_(PowerPCBase);
  377. }
  378. __inline struct TaskPPC *FindTaskByID(LONG a1)
  379. {
  380.         extern struct Library *PowerPCBase;
  381.         return FindTaskByID_(PowerPCBase,a1);
  382. }
  383. __inline LONG SetNiceValue(struct TaskPPC *a1, LONG a2)
  384. {
  385.         extern struct Library *PowerPCBase;
  386.         return SetNiceValue_(PowerPCBase,a1,a2);
  387. }
  388. __inline VOID AddPortPPC(struct MsgPortPPC *a1)
  389. {
  390.         extern struct Library *PowerPCBase;
  391.         AddPortPPC_(PowerPCBase,a1);
  392. }
  393. __inline struct MsgPortPPC *CreateMsgPortPPC()
  394. {
  395.         extern struct Library *PowerPCBase;
  396.         return CreateMsgPortPPC_(PowerPCBase);
  397. }
  398. __inline VOID DeleteMsgPortPPC(struct MsgPortPPC *a1)
  399. {
  400.         extern struct Library *PowerPCBase;
  401.         DeleteMsgPortPPC_(PowerPCBase,a1);
  402. }
  403. __inline struct MsgPortPPC *FindPortPPC(STRPTR a1)
  404. {
  405.         extern struct Library *PowerPCBase;
  406.         return FindPortPPC_(PowerPCBase,a1);
  407. }
  408. __inline struct Message *GetMsgPPC(struct MsgPortPPC *a1)
  409. {
  410.         extern struct Library *PowerPCBase;
  411.         return GetMsgPPC_(PowerPCBase,a1);
  412. }
  413. __inline VOID PutMsgPPC(struct MsgPortPPC *a1, struct Message *a2)
  414. {
  415.         extern struct Library *PowerPCBase;
  416.         PutMsgPPC_(PowerPCBase,a1,a2);
  417. }
  418. __inline VOID RemPortPPC(struct MsgPortPPC *a1)
  419. {
  420.         extern struct Library *PowerPCBase;
  421.         RemPortPPC_(PowerPCBase,a1);
  422. }
  423. __inline VOID ReplyMsgPPC(struct Message *a1)
  424. {
  425.         extern struct Library *PowerPCBase;
  426.         ReplyMsgPPC_(PowerPCBase,a1);
  427. }
  428. __inline struct Message *AllocXMsgPPC(ULONG a1, struct MsgPortPPC *a2)
  429. {
  430.         extern struct Library *PowerPCBase;
  431.         return AllocXMsgPPC_(PowerPCBase,a1,a2);
  432. }
  433. __inline VOID FreeXMsgPPC(struct Message *a1)
  434. {
  435.         extern struct Library *PowerPCBase;
  436.         FreeXMsgPPC_(PowerPCBase,a1);
  437. }
  438. __inline VOID PutXMsgPPC(struct MsgPort *a1, struct Message *a2)
  439. {
  440.         extern struct Library *PowerPCBase;
  441.         PutXMsgPPC_(PowerPCBase,a1,a2);
  442. }
  443. __inline struct MsgPortPPC *SetReplyPortPPC(struct Message *a1, struct MsgPortPPC *a2)
  444. {
  445.         extern struct Library *PowerPCBase;
  446.         return SetReplyPortPPC_(PowerPCBase,a1,a2);
  447. }
  448. __inline struct TagItem *FindTagItemPPC(ULONG a1, struct TagItem *a2)
  449. {
  450.         extern struct Library *PowerPCBase;
  451.         return FindTagItemPPC_(PowerPCBase,a1,a2);
  452. }
  453. __inline ULONG GetTagDataPPC(ULONG a1, ULONG a2, struct TagItem *a3)
  454. {
  455.         extern struct Library *PowerPCBase;
  456.         return GetTagDataPPC_(PowerPCBase,a1,a2,a3);
  457. }
  458. __inline struct TagItem *NextTagItemPPC(struct TagItem **a1)
  459. {
  460.         extern struct Library *PowerPCBase;
  461.         return NextTagItemPPC_(PowerPCBase,a1);
  462. }
  463. __inline VOID ChangeMMU(ULONG a1)
  464. {
  465.         extern struct Library *PowerPCBase;
  466.         ChangeMMU_(PowerPCBase,a1);
  467. }
  468. __inline VOID GetInfo(struct TagItem *a1)
  469. {
  470.         extern struct Library *PowerPCBase;
  471.         GetInfo_(PowerPCBase,a1);
  472. }
  473. __inline VOID SetCache(ULONG a1, APTR a2, ULONG a3)
  474. {
  475.         extern struct Library *PowerPCBase;
  476.         SetCache_(PowerPCBase,a1,a2,a3);
  477. }
  478. __inline ULONG SetHardware(ULONG a1, APTR a2)
  479. {
  480.         extern struct Library *PowerPCBase;
  481.         return SetHardware_(PowerPCBase,a1,a2);
  482. }
  483. __inline VOID GetHALInfo(struct TagItem *a1)
  484. {
  485.         extern struct Library *PowerPCBase;
  486.         GetHALInfo_(PowerPCBase,a1);
  487. }
  488. __inline VOID SetScheduling(struct TagItem *a1)
  489. {
  490.         extern struct Library *PowerPCBase;
  491.         SetScheduling_(PowerPCBase,a1);
  492. }
  493. __inline VOID ModifyFPExc(ULONG a1)
  494. {
  495.         extern struct Library *PowerPCBase;
  496.         ModifyFPExc_(PowerPCBase,a1);
  497. }
  498. __inline VOID RemExcHandler(APTR a1)
  499. {
  500.         extern struct Library *PowerPCBase;
  501.         RemExcHandler_(PowerPCBase,a1);
  502. }
  503. __inline APTR SetExcHandler(struct TagItem *a1)
  504. {
  505.         extern struct Library *PowerPCBase;
  506.         return SetExcHandler_(PowerPCBase,a1);
  507. }
  508. __inline APTR SetExcHandlerTags(Tag tag1, ...)
  509. {
  510.         extern struct Library *PowerPCBase;
  511.         return SetExcHandler_(PowerPCBase,(struct TagItem *) &tag1);
  512. }
  513. __inline VOID SetExcMMU()
  514. {
  515.         extern struct Library *PowerPCBase;
  516.         SetExcMMU_(PowerPCBase);
  517. }
  518. __inline VOID ClearExcMMU()
  519. {
  520.         extern struct Library *PowerPCBase;
  521.         ClearExcMMU_(PowerPCBase);
  522. }
  523. __inline ULONG Super()
  524. {
  525.         extern struct Library *PowerPCBase;
  526.         return Super_(PowerPCBase);
  527. }
  528. __inline VOID User(ULONG a1)
  529. {
  530.         extern struct Library *PowerPCBase;
  531.         User_(PowerPCBase,a1);
  532. }
  533. __inline VOID Signal68K(struct Task *a1, ULONG a2)
  534. {
  535.         extern struct Library *PowerPCBase;
  536.         Signal68K_(PowerPCBase,a1,a2);
  537. }
  538. #endif /* POWERPCLIB_V7 */
  539. #endif /* __PPC__ */
  540.  
  541. #endif /* STORMPROTOS_POWERPC_SPROTOS_H */
  542.